package com.ojoin.trade.supplyloan_core.web.dao;

import com.ojoin.trade.common.exception.BusinessException;
import com.ojoin.trade.common.web.dao.BaseDao;
import com.ojoin.trade.supplyloan_core.web.domain.*;
import org.springframework.data.domain.Pageable;
import org.springframework.stereotype.Repository;

import java.util.List;

/**
 * Created with IntelliJ IDEA.
 * User: Administrator
 * Date: 15-10-22
 * Time: 上午11:08
 * To change this template use File | Settings | File Templates.
 */

public interface TbSlLoanRefundDao extends BaseDao<TbSlLoanRefundLog> {

    public void insertTbSlLoanRefund(TbSlLoanRefundLog tbslloanrefundvo)throws BusinessException;

    public List<TbSlLoanRefundLogVo>   queryTbSlLoanReFundvos(int Joinid,Pageable page)throws BusinessException;

    public List<TbSlRepayCreditVo>  queryRepayCreditvo(int joinid,Pageable page)throws BusinessException;

    public List<TbSlLoanRefundVo>  queryRefundVo(int joinid,Pageable page)throws BusinessException;
    
    public List<TbSlLoanRefundVo>  queryRefundVo(int joinid,String begintime,String endtime,Pageable page)throws BusinessException;
    

    public Long queryTotalInterest(int idSlLoanCreditLog)throws BusinessException;

    public List<TbSlLoanRefundTotalVo> queryRefundTotalVo(int joinid,Pageable page)throws BusinessException;

    public List<TbSlCheckAccVo> queryCheckAccVo(String curdate,Pageable page)throws BusinessException;

    public List<TbSlLoanRefundVo> queryRenewedRefundForExcel(int joinid)throws BusinessException;

    public List<SLRefundBaseInfoVo> queryRefundBaseInfoVO(String begintime,String endtime,Integer userIdOfJoinOfDebtor,Integer userIdOfJoinOfCreditor,Pageable pageable)throws BusinessException;

    public List<SLRefundDetailVo> queryRefundDetailVo(String begintime,String endtime,Integer userIdOfJoinOfDebtor,Integer userIdOfJoinOfCreditor)throws BusinessException;

    public SLRefundBillVo queryRefundBillVo(String begintime,String endtime,Integer userIdOfJoinOfDebtor,Integer userIdOfJoinOfCreditor)throws BusinessException;
}